#include <bits/stdc++.h>
using namespace std;

int f[2010][2][2010];
int mf[2010][2];

void init (int nn){
    for ( int i = 1 ; i <= nn ; i++ ){
        for ( int j = 1 ; j <= i ; j++ ){
            f[i][0][j]=0;
            f[i][1][j]=0;
        }
        mf[i][0]=0;
        mf[i][1]=0;
    }
    return;
}

int fg ( int k , int tk ){
    int rz=0;
    for ( int i = 1 ; i <= k ; i++ ){
        rz=max(rz,f[k][tk][i]);
    }
    return rz;
}

void ans(){
    int n;
    cin >>n;
    init(n);
    int a[n+10];
    for ( int i = 1 ; i <= n ; i++ ){
        cin >>a[i];
    }
    int q,p;
    for ( int i = 2 ; i <= n ; i++ ){
        for ( int j = 1 ; j < i ; j++ ){
            q=mf[i-1][0];
            p=mf[i-1][1];
            if (j==i-1){
                f[i][0][j]=q;
                f[i][1][j]=p;
            }else{
                f[i][0][j]=f[i-1][0][j];
                f[i][1][j]=f[i-1][1][j];
            }
            if (a[i]==a[j]){
                f[i][0][j]+=a[i];
                f[i][1][j]+=a[i];
            }
            mf[i][0]=max(mf[i][0],f[i][0][j]);
            mf[i][1]=max(mf[i][1],f[i][1][j]);
        }
    }
    cout <<max(mf[n][0],mf[n][1])<<endl;
    return;
}

int main (){
    freopen("color.in","r",stdin);
    freopen("color.out","w",stdout);
    int T;
    cin >>T;
    for ( int t = 1 ; t <= T ; t++ ){
        ans();
    }
    return 0;
}
